package com.gxa.service;

import com.gxa.common.R;
import com.gxa.pojo.Role;
import com.gxa.pojo.zhy.EditPermission;
import com.gxa.pojo.zhy.Paging;

/**
 * Created with IntelliJ IDEA.
 * User: 赵贺益
 * Date: 2021/12/06 10:55
 * Description:
 * Version: V1.0
 */
public interface RoleAuthorizationService {
    /**
     * 根据当前页码数和每页显示的数量查询所有的角色以及相关信息
     * @param currentPage
     * @param pageSize
     * @return
     */
    R queryAllRoles(Integer currentPage, Integer pageSize);
    /**
     * 根据角色id(role_id)删除角色
     * @param role_id
     * @return
     */
    R deleteRoleByRole_id(Integer role_id);
    /**
     * 添加角色
     * @param role_name
     * @param role_describe
     * @return
     */
    R addRole(String role_name, String role_describe);

    /**
     * 根据角色id请求显示其对应的所有的权限
     * @param role_id
     * @return
     */
    R queryAllRolesByRole_id(Integer role_id);
    /**
     * 修改角色信息（名字，描述）
     * @param role
     * @return
     */
    R updateRolesInformationbyRoleId(Role role);
    /**
     * 根据角色id修改角色对应的权力信息(改中间表)
     * @param
     * @return
     */
    R updatePermissionByRoleId(EditPermission editPermission);

    /**
     * 模糊搜索显示所有的角色
     * @param paging
     * @return
     */
//    R querySearchRolesbyKeyword(Paging paging);
    R querySearchRolesbyKeyword(Integer currentPage, Integer pageSize, String message);
}
